Cell user occupancy indicator to enhance intelligent traffic steering

ABSTRACT

Traffic associated with user equipment that are served by a first radio access network is steered to a second radio access network based on a cell user occupancy criterion. Cell user occupancy data that represents a maximum number of devices served by an access point is determined based on a type of the access point (e.g., macro access point, femto access point, WiFi access point, etc.). Further, based on the cell user occupancy data, a normalized index value is generated that is relative to different cell types/capacities. The cell user occupancy data is then transmitted to one or more neighboring access points that can utilize the cell user occupancy data to facilitate traffic steering, load balancing, and/or neighbor relationship management.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, and claims priority to, U.S.patent application Ser. No. 14/057,853, filed on 18 Oct. 2013, andentitled “CELL USER OCCUPANCY INDICATOR TO ENHANCE INTELLIGENT TRAFFICSTEERING,” the entirety of which is hereby incorporated by referenceherein.

TECHNICAL FIELD

The subject disclosure relates to wireless communications, e.g., to acell user occupancy indicator that enhances intelligent trafficsteering.

BACKGROUND

With an explosive growth in utilization of communication devices, mobiletelecommunications carriers are seeing an exponential increase innetwork traffic. To meet the demands of higher traffic, conventionalsystems employ traffic steering mechanisms that offload mobile trafficfrom a first cell to an overlapping second cell. For example, if thefirst cell is determined to be congested, one or more data flows of auser equipment coupled to a first access point of the first cell can besteered to a second access point of the second cell. As more traffic issteered to the second cell, the load of the second cell increases and isdriven closer to maximum load level (e.g., congested state). In acomplex communication networks, for example, with multiple layers (e.g.,macro cells, pico cells, femtocells, etc.) and/or multiple technologies(e.g., Long Term Evolution (LTE), Universal Mobile TelecommunicationsSystem (UMTS), WiFi, etc.), network conditions (e.g., traffic, capacity)vary throughout the day and steering traffic to a congested target cellcan result in a ping-pong effect wherein the traffic is oscillatedbetween cells.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example system that facilitates a transfer of celluser occupancy data between access points in a communication network.

FIG. 2 illustrates an example system for determining cell user occupancydata that is employed to facilitate traffic steering.

FIG. 3 illustrates an example system that utilizes cell user occupancydata of target access points to facilitate efficient network selection.

FIG. 4 illustrates an example system that facilitates query-basedtraffic steering.

FIG. 5 illustrates an example flow diagram that depicts a transfer ofcell user occupancy data between access points in a Long Term Evolution(LTE) network.

FIG. 6 illustrates an example flow diagram that depicts a transfer ofcell user occupancy data from a Universal Mobile TelecommunicationsSystem (UMTS) network to an LTE network.

FIG. 7 illustrates an example flow diagram 700 that depicts a transferof cell user occupancy data from an LTE network to a UMTS network.

FIG. 8 illustrates an example system that facilitates automating one ormore features in accordance with the subject embodiments.

FIG. 9 illustrates an example method that facilitates a transmission ofcell user occupancy data that is to be employed for efficient trafficsteering.

FIG. 10 illustrates an example method that facilitates network selectionto efficiently steer traffic associated with a user equipment (UE) froma first radio access network (RAN) to a second RAN.

FIG. 11 illustrates an example method for determining whether trafficassociated with a UE is to be steered from a source access point to atarget access point.

FIG. 12 illustrates an example block diagram of an access point suitablefor traffic steering based on cell user occupancy data.

FIG. 13 illustrates an example wireless communication environment fornetwork selection based on cell user occupancy data.

FIG. 14 illustrates a block diagram of a computer operable to executethe disclosed communication architecture.

DETAILED DESCRIPTION

One or more embodiments are now described with reference to thedrawings, wherein like reference numerals are used to refer to likeelements throughout. In the following description, for purposes ofexplanation, numerous specific details are set forth in order to providea thorough understanding of the various embodiments. It may be evident,however, that the various embodiments can be practiced without thesespecific details, e.g., without applying to any particular networkedenvironment or standard. In other instances, well-known structures anddevices are shown in block diagram form in order to facilitatedescribing the embodiments in additional detail.

As used in this application, the terms “component,” “module,” “system,”“interface,” “node,” “platform,” or the like are generally intended torefer to a computer-related entity, either hardware, a combination ofhardware and software, software, or software in execution or an entityrelated to an operational machine with one or more specificfunctionalities. For example, a component may be, but is not limited tobeing, a process running on a processor, a processor, an object, anexecutable, a thread of execution, computer-executable instruction(s), aprogram, and/or a computer. By way of illustration, both an applicationrunning on a controller and the controller can be a component. One ormore components may reside within a process and/or thread of executionand a component may be localized on one computer and/or distributedbetween two or more computers. As another example, an interface caninclude input/output (I/O) components as well as associated processor,application, and/or API components.

Further, the various embodiments can be implemented as a method,apparatus, or article of manufacture using standard programming and/orengineering techniques to produce software, firmware, hardware, or anycombination thereof to control a computer to implement one or moreaspects of the disclosed subject matter. An article of manufacture canencompass a computer program accessible from any computer-readabledevice or computer-readable storage/communications media. For example,computer readable storage media can include but are not limited tomagnetic storage devices (e.g., hard disk, floppy disk, magnetic strips. . . ), optical disks (e.g., compact disk (CD), digital versatile disk(DVD) . . . ), smart cards, and flash memory devices (e.g., card, stick,key drive . . . ). Of course, those skilled in the art will recognizemany modifications can be made to this configuration without departingfrom the scope or spirit of the various embodiments.

In addition, the word “example” or “exemplary” is used herein to meanserving as an example, instance, or illustration. Any aspect or designdescribed herein as “exemplary” is not necessarily to be construed aspreferred or advantageous over other aspects or designs. Rather, use ofthe word exemplary is intended to present concepts in a concretefashion. As used in this application, the term “or” is intended to meanan inclusive “or” rather than an exclusive “or.” That is, unlessspecified otherwise, or clear from context, “X employs A or B” isintended to mean any of the natural inclusive permutations. That is, ifX employs A; X employs B; or X employs both A and B, then “X employs Aor B” is satisfied under any of the foregoing instances. In addition,the articles “a” and “an” as used in this application and the appendedclaims should generally be construed to mean “one or more” unlessspecified otherwise or clear from context to be directed to a singularform.

Moreover, terms like “user equipment,” “communication device,” “mobiledevice,” “mobile terminal,” and similar terminology, refer to a wired orwireless device utilized by a subscriber or user of a wired or wirelesscommunication service to receive or convey data, control, voice, video,sound, gaming, or substantially any data-stream or signaling-stream. Theforegoing terms are utilized interchangeably in the subjectspecification and related drawings. Data and signaling streams can bepacketized or frame-based flows. Aspects or features of the disclosedsubject matter can be exploited in substantially any wired or wirelesscommunication technology; e.g., Universal Mobile TelecommunicationsSystem (UMTS), WiFi, Worldwide Interoperability for Microwave Access(WiMAX), General Packet Radio Service (GPRS), Enhanced GPRS, ThirdGeneration Partnership Project (3GPP) Long Term Evolution (LTE), ThirdGeneration Partnership Project 2 (3GPP2) Ultra Mobile Broadband (UMB),High Speed Packet Access (HSPA), Zigbee, or another IEEE 802.XXtechnology. Additionally, substantially all aspects of the disclosedsubject matter can be exploited in legacy (e.g., wireline)telecommunication technologies and/or future telecommunicationtechnologies (e.g., 5G).

Furthermore, the terms “user,” “subscriber,” “consumer,” and the likeare employed interchangeably throughout the subject specification,unless context warrants particular distinction(s) among the terms. Itshould be appreciated that such terms can refer to human entities orautomated components supported through artificial intelligence (e.g., acapacity to make inference based on complex mathematical formalisms),which can provide simulated vision, sound recognition and so forth.

The systems and methods disclosed herein facilitate enhancing networksteering and/or load balancing decisions by utilization of cell useroccupancy data associated with a cell site. As an example, the terms“traffic steering” as used herein can refer to directing, attempting todirect, and/or instructing to direct or deliver, via a first accesspoint, at least a portion of traffic (data flows/packets) associatedwith a communication device that is coupled to and/or communicating viaa second access point. In one aspect, a source cell site can receiveinformation indicative of user occupancy of a target cell site andutilize the information to ascertain whether traffic from a userequipment, coupled to the source cell site, should be steered to thetarget cell site. For example, if determined that the target cell sitehas a low user occupancy (e.g., femtocell, picocell, small cells, etc.),it may not be a desirable/optimal cell to handover to. Understanding thecell user occupancy of neighboring cells can reduce congestion andresult in stronger network performance.

Referring initially to FIG. 1, there illustrated is an example system100 that facilitates a transfer of cell user occupancy data betweenaccess points in a communication network, according to one or moreaspects of the disclosed subject matter. System 100 can be part of acommunication network (e.g., cellular network) and can include a sourceaccess point 102 and a target access point 104. In one aspect, thesource access point 102 and/or the target access point 104 can be partof a self optimizing network (SON). As an example, the access points(102, 104) can include, but are not limited to, a base station, aneNodeB, a picostation, a WiFi access point, a femto access point, aHomeNodeB (HNB), an eHNB, microcell access point, etc. In one aspect,the source access point 102 and the target access point 104 areneighboring access points such that, the coverage areas of the sourceaccess point 102 and the target access point 104 at least partiallyoverlap to facilitate handover between the cell sites. Further, althoughonly one target access point 104 is depicted in FIG. 1, the subjectspecification is not so limited and system 100 can comprise one or moretarget access points.

In one embodiment, target access point 104 can determine cell useroccupancy data 106 associated with the target access point 104. Forexample, the cell user occupancy data 106 can represent a maximumcapacity supported by the target access point 104, for example, based onthe type of cell (e.g., macro cell, small cell, femtocell, picocell,etc.). Further, the cell user occupancy data 106 can be a compositecapacity value that is computed relative to other cells. Moreover, thecell user occupancy data 106 helps select an optimal cell for trafficsteering, for example, when the source access point 102 is congested ornearing congestion. The target access point 104 can transmit (e.g.,periodically, on demand, in response to determining a change in the celluser occupancy, etc.) the cell user occupancy data 106 to one or moreneighboring access points for example, source access point 102. In oneaspect, the source access point 102 can utilize the cell user occupancydata 106 to determine whether traffic from one or more user equipment(UE), for example, UE 108, that are served by the source access point102, is to be steered to the target access point 104. As an example, thecell user occupancy data 106 provides context to load index data (e.g.,current load value) and/or congestion index data (e.g., current capacityutilization value) of the target access point 104. Moreover, the celluser occupancy data 106 is utilized by the source access point 102 todetermine the amount of occupancy specific to the cell type of thetarget access point 104, for example, e.g., 30% capacity of a macro celldoes not correlate to 30% capacity of a picocell or femtocell. In theabove example scenario, the macro cell that has 30% current cell useroccupancy is determined to be a more desirable/optimal cell to movetraffic as compared to the smaller picocell/femtocell with 30% cell usercapacity. Accordingly, if the cell user occupancy data 106 is high(e.g., above a defined threshold value), the traffic from UE 108 can besteered to the target access point 104; else, if the cell user occupancydata 106 is low (e.g., equal to or less than the defined thresholdvalue), the traffic from UE 108 can be steered to another target accesspoint (not shown) with a higher cell user occupancy and/or the trafficfrom UE 108 can continue to be communicated via the source access point102.

In one aspect, the steering decision can be made by the source accesspoint 102, which can instruct the UE 108 to steer the traffic to aselected (e.g., based in part on the cell user occupancy data 106)target access point. In another aspect, the source access point 102 canforward (e.g., via a set of cell broadcast messages) the cell useroccupancy data 106 to the UE 108 and the UE 108 can make the steeringdecision based on the cell user occupancy data 106. In yet anotheraspect, the UE 108 and/or the source access point 102 are not limited tosolely/independently making a network selection decision for trafficsteering and can participate in a joint selection process with one ormore devices (not shown) that are coupled to the UE 108 and/or thesource access point 102 to facilitate selection of a target access pointto which traffic is to be steered. Moreover, if determined (e.g., basedin part on the cell user occupancy data 106) that traffic associatedwith the UE 108 is to be steered to the target access point 104, thenthe UE 108 can communicate one or more data flows via the target accesspoint 104 (e.g., depicted by the dotted line in FIG. 1). As an example,the UE 108 can include most any electronic communication device such as,but not limited to, most any consumer electronic device, for example, atablet computer, a digital media player, a digital photo frame, adigital camera, a cellular phone, a personal computer, a personaldigital assistant (PDA), a smart phone, a laptop, a gaming system, etc.Further, UE 108 can also include, LTE-based devices, such as, but notlimited to, most any home or commercial appliance that includes an LTEradio. It can be noted that UE 108 can be mobile, have limited mobilityand/or be stationary. In one example, UE 108 can include a multi-band,multi-mode, and/or multi-radio device.

Referring now to FIG. 2, there illustrated is an example system 200 fordetermining cell user occupancy data that is employed to facilitatetraffic steering, in accordance with an aspect of the subjectdisclosure. In one aspect, system 200 facilitates determination of celluser occupancy data associated with a target access point 104 that canbe utilized by a set of neighboring access points (e.g., source accesspoint 102) to facilitate traffic steering and/or load balancing. It isnoted that the source access point 102 and the target access point 104can include functionality as more fully described herein, for example,as described above with regard to system 100. In one example, the targetaccess point 104 can include, but is not limited to an access point thatis operated and/or deployed by a service provider of the communicationnetwork 204, and that utilizes the same or different radio technologiesfor communication with the UEs (e.g., UE 108) as utilized by sourceaccess point 102. Further, in another example, the source access point102 and the target access point 104 can be deployed in the same ordifferent (commonly owned/operated) networks (e.g., Heterogeneousnetworks).

According to an embodiment, the target access point 104 can include anoccupancy determination component 208 that can determine cell useroccupancy of the target access point 104. In one aspect, the cell useroccupancy can include a pre-configured parameter, based on actual cellcapability (both hardware and software) of the target access point 104.As an example, the occupancy determination component 208 can receive thepre-configured parameter from a network configuration server 202 ofcommunication network 204 (e.g., during initialization, power-up,periodically, based on an event, on demand, etc.). In another example,the pre-configured parameter can be pre-programmed and stored in thedata store 206 of the target access point, for example, by themanufacturer and/or service provider. It is noted that the data store206 can include volatile memory(s) or nonvolatile memory(s), or caninclude both volatile and nonvolatile memory(s). Examples of suitabletypes of volatile and non-volatile memory are described below withreference to FIG. 14. The memory (e.g., data stores, databases) of thesubject systems and methods is intended to comprise, without beinglimited to, these and any other suitable types of memory.

In one aspect, the cell user occupancy can represent a maximum number ofuser equipment that can simultaneously (or substantially simultaneously)be served by and/or coupled to (e.g., via an air interface) the targetaccess point 104. A classification of the access point (e.g., a macroaccess point, a femto access point, a pico station, etc.) can beemployed to determine the cell user occupancy. For example, since amacro cell can serve a greater number of user equipment than that servedby a femtocell/picocell, a macro cell can be assigned (e.g., by theoccupancy determination component 208) a greater cell user occupancythan that of the femtocell/picocell.

In one aspect, the occupancy determination component 208 can normalizethe cell user occupancy value relative to different cell types. Forexample, an index number “2” can be assigned to the cell user occupancyto if the target access point 104 is determined (e.g., by the occupancydetermination component 208) to be a femtocell that supports a maximumof four user equipment; an index “4” can be assigned to the cell useroccupancy to if the target access point 104 is determined (e.g., by theoccupancy determination component 208) to be a picocell that supports amaximum of sixteen user equipment; an index “10” can be assigned to thecell user occupancy to if the target access point 104 is determined(e.g., by the occupancy determination component 208) to be a macro cell.It is noted that the cell user occupancy data is not limited to theabove index values, and can comprise most any normalization and/orclassification technique. For example, the occupancy determinationcomponent 208 can classify the cell user occupancy as “low,” “regular,”“high,” etc. based on predefined threshold values.

The normalized and/or classified cell user occupancy value can then betransmitted to neighboring access points (e.g., source access point 102)by the data transfer component 212, for example, based onoperator-defined network policies 210. As an example, the data transfercomponent 212 can transmit the cell user occupancy information, via X2interfaces enabled by SON and/or most any other transport mechanisms.Moreover, the data transfer component 212 can transmit the cell useroccupancy data at various times, such as, but not limited to,periodically, on demand, based on detecting an event, based on detectinga change in a the cell user occupancy, based on determining that thecell user occupancy exceeds a defined threshold, based on receiving aquery from the source access point device, during initialization, etc.In one embodiment, the cell user occupancy data can be included withinor appended to a resource status update message, for example, a RIM(Radio Access Network (RAN) Information Message) that contains otherinformation, such as (but not limited to) current network load, currentuser capacity (e.g., number of devices currently being served) of thetarget access point 104. Alternatively, the cell user occupancy data canbe transmitted as a new/separate message. The source access point 102can utilize the cell user occupancy data to enhance traffic steeringdecisions. In an alternate embodiment, the occupancy determinationcomponent 208 can determine an absolute value of cell user occupancy(e.g., 5 user, 10 users, 50 users, etc.), the data transfer component212 can transmit the absolute value to the source access point 102, andthe source access point can normalize (and/or classify) the received theabsolute value.

Referring now to FIG. 3, there illustrated is an example system 300 thatutilizes cell user occupancy data of target access points to facilitateefficient network selection, according to an aspect of the subjectdisclosure. It is noted that the source access point 102, communicationnetwork 204, and the network policies 210 can include functionality asmore fully described herein, for example, as described above with regardto systems 100 and 200. Further, target access points 104 ₁-104 _(n)(where n is a positive integer) are substantially similar to targetaccess point 104 and can include functionality as more fully describedherein, for example, as described above with regard to target accesspoint 104.

In one aspect, a data reception component 302 can receive the cell useroccupancy data transmitted by one or more neighboring access pointdevices, including, the target access points 104 ₁-104 _(n) (e.g., via aRIM). Additionally or optionally, the data reception component 302 canalso receive respective current capacity information (e.g., number of UEthat are currently coupled to the neighboring access points) of the oneor more neighboring access points. As an example, the data receptioncomponent 302 can parse the received message(s) and provide therespective cell user occupancy data to a traffic steering component 304and/or a neighbor management component 306. The traffic steeringcomponent 304 analyzes the cell user occupancy data to select a targetaccess point from the target access points 104 ₁-104 _(n), to whichtraffic from a UE coupled to the source access point 102 should besteered to (e.g., if the load of the source access point 102 hasincreased above a threshold value). In one aspect, the data receptioncomponent 302 can receive normalized values (and/or classifications) forthe cell user occupancy of the target access points 104 ₁-104 _(n). Inanother aspect, the data reception component 302 can receive absolutevalues (and/or classifications) for the cell user occupancy of thetarget access points 104 ₁-104 _(n) and can normalize and/or classifythe received values relative to each other and/or based on predefinedthresholds.

According to an embodiment, the traffic steering component 304 candetermine whether the cell user occupancy data satisfies a predefinedcriterion (e.g., set based on the network policies 210). For example,the traffic steering component 304 can compare the cell user occupancyindex values received from the target access points 104 ₁-104 _(n) andselect the target access points having the highest cell user occupancyindex values. In another example, the traffic steering component 304 cancompare the cell user occupancy index value of a particular access pointof the target access points 104 ₁-104 _(n) to a threshold value and/orrange. If the cell user occupancy index value is higher than thethreshold value (and/or within the range), the traffic steeringcomponent 304 can instruct one or more UEs (e.g., UE 108), coupled tothe source access point 102 to connect to the selected target accesspoint and steer at least a portion of their traffic via the selectedtarget access point. It is noted that the UEs are not limited tocommunicating all data (e.g., IP flows) through the new access point andthat the UEs can select a first portion of data (e.g., select a firstset of IP flows) that can be communicated via the selected target accesspoint and a second portion of data (e.g., select a second set of IPflows) that can be communicated via the source access point 102. As anexample, the selection of the data (e.g., IP flows) can be based onnetwork policies 210, e.g., using an access network discovery andselection function (ANDSF). Alternatively, if the cell user occupancyindex value is lower than the threshold value (and/or outside therange), the traffic steering component 304 can determine that thespecific target access point is not an optimal candidate for trafficsteering and can select another access point (from the target accesspoints 104 ₁-104 _(n)) via which the UEs can communicate and/or caninstruct the UEs to continue communicating via the source access point102.

In addition to the cell user occupancy data, the traffic steeringcomponent 304 can utilize the current cell user capacity data of thetarget access points 104 ₁-104 _(n) to further enhance the networkselection and/or traffic steering decision. Moreover, the trafficsteering component 304 can bias mobility parameters based on the currentuser capacity condition and the cell user occupancy. A weighting on thecell user occupancy can be dynamically and/or automatically adjustedbased on current user capacity and/or current load. As an example, thetarget access point (e.g., target access point 1 104 ₁) that has a lowmaximum user occupancy, that is at 70% load is ranked lower (e.g., bythe traffic steering component 304) than another target access point(e.g., target access point 2 104 ₂) a cell that has a high maximum usercapacity with 70% load. Accordingly, in this example, the trafficsteering component 304 can assign a higher bias to mobility parametersof target access point 2 104 ₂ than the bias assigned to mobilityparameters of target access point 1 104 ₁. Moreover, the cell useroccupancy data normalizes an index to encompass different cells (e.g.,macro, femto, pico etc. . . . ) and differentfunctionality/implementation that can impact maximum user occupancy andfacilitated steering of traffic in an intelligent manner between thedifferent cells (e.g., multi technology/vendor/layer).

Although depicted as completely residing within the source access point102, it can be noted that the traffic steering component 304 can bedistributed among multiple devices, such as, but not limited to, anetwork device and/or a UE (not shown) served by the source access point102. For example, the network device can determine the biased mobilityparameters (e.g., based on the cell user occupancy data) and the sourceaccess point 102 can simply forward the mobility parameters and/orinstructions to steer traffic, to the UEs coupled to the source accesspoint 102. Alternatively, the source access point 102 can simply forward(e.g., via a cell broadcast message) the cell user occupancy data (andthe current cell user capacity) received from the target access points104 ₁-104 _(n) to the UEs, which in turn can analyze the information todetermine and/or bias mobility parameters and select a radio accessnetwork via which traffic is to be communicated.

In one embodiment, the cell user occupancy data can also be utilized bya neighbor management component 306 that manages neighbor relations todynamically prioritize/rank neighbor cell sites based on theirrespective cell user occupancy data. Moreover, the neighbor managementcomponent 306 can update a Neighbor Relation Table (NRT) (not shown). Inone aspect, based on the cell user occupancy data, identifier datarepresenting the target access points 104 ₁-104 _(n) can be added to,deleted from, and/or ranked higher/lower, in the table. For example, ifthe cell user occupancy of the target access point 1 104 ₁ hasincreased, the ranking of the target access point 1 104 ₁ can beincreased (and/or vice versa) and/or the data representing the targetaccess point 1 104 ₁ can be added to the NRT.

Referring now to FIG. 4, there illustrated is an example system 400 thatfacilitates query-based traffic steering, according to one or moreaspects of the disclosed subject matter. It can be noted that the sourceaccess point 102, the target access point 104, and UE 108 can includefunctionality as more fully described herein, for example, as describedabove with regard to systems 100-300.

In one aspect, the target access point 104 can determine (e.g., byemploying the occupancy determination component 208) cell user occupancydata associated with the target access point 104 that is indicative of anormalized value (relative to different cell types) representing amaximum number of devices that can be served by the target access pointat a given time. Further, the target access point 104 can transmit(e.g., by employing the data transfer component 212) the cell useroccupancy data to a network load management system 402 of thecommunication network. It can be noted that the network load managementsystem 402 can be locally coupled to the source access point 102 and/orthe target access point 104, for example, located within the radioaccess network (RAN) (e.g., be part of the SON) or can be locatedelsewhere within the communication network. Moreover, the network loadmanagement system 402 can store data received from one or more accesspoints, including target access point 104, in a load condition(s) datastore 404. This stored data can be accessed by the source access point102, for example, if the source access point 102 does not directlyreceive the cell user occupancy data from the target access point 104.It can be noted that the network load management system 402 can collectthe cell user occupancy data in a pull configuration with the one ormore access points (e.g., target access point 104) and/or receive thecell user occupancy data pushed by one or more access points (e.g.,target access point 104).

According to an aspect, the source access point 102 (and/or UE 108) caninitiate a query for the cell user occupancy data. As an example, thequery can be transmitted periodically (e.g., based on predefined timingintervals), on-demand, in response to an event, etc. In response toreceiving the query, the network load management system 402 can identifyaccess points that are neighboring the source access point 102(including target access point 104), lookup load condition data (e.g.,cell user occupancy data) received from the neighboring access points inthe load condition(s) data store 404, and transmit the data to thesource access point 102 (and/or UE 108).

In an aspect, the query generated by the source access point 102 (and/orUE 108) can include data such as (but not limited to) the servedphysical cell ID (PCI) of the source access point 102, the cellidentifier (ID) associated with the source access point 102, the BasicService Set IDentifier (BSSID) and/or the Service Set Identifier (SSID)(if the RAN includes or is otherwise capable of receiving loadinformation from a nearby a WiFi network). Based on the PCI/SSID/BSSID,the network load management system 402 can identify the network sectorscorresponding to the source access point 102 and/or the one or moreneighboring access points (e.g., target access point 104), dynamicallydetermine (and/or lookup) the corresponding network load information(e.g., cell user occupancy data), and transmit the determinedinformation to the source access point 102 (and/or UE 108). The sourceaccess point 102 (and/or UE 108) can receive the cell user occupancydata (e.g., via the data reception component 302) and analyze the celluser occupancy data to facilitate traffic steering and/or updatemobility parameters.

FIG. 5 illustrates an example flow diagram 500 that depicts a transferof cell user occupancy data between access points in an LTE network. Inthis example scenario, source access point 102 and target access point104 are part of a SON in an LTE communication network. It can be notedthat the source access point 102 and the target access point 104 caninclude functionality as more fully described herein, for example, asdescribed above with regard to systems 100-400. As an example, thesource access point 102 and the target access point 104 can communicatevia an X2 Application Protocol (X2AP) to exchange load measurement data.At 502, the source access point 102 can transmit a Resource StatusRequest to the target access point 104 to initiate transfer of loadmeasurement data from the target access point 104. In one aspect, theResource Status Request can request for the cell user occupancy data ofthe target access point 104. As an example, a cell user occupancyindicator can be included as a bit (e.g., sixth bit) in a bitmapprovided in the request. In addition, the Resource Status Request canrequest various other load measurements, such as, but not limited to,current load, bandwidth utilization, number of UEs currently coupled tothe target access point 104, etc. On receiving the Resource StatusRequest, the target access point 104 can perform requested loadmeasurement data based on the parameters specified in the ResourceStatus Request and/or determine (e.g., lookup) saved measurement datafrom data store 206.

At 504, the target access point 104 can then transmit a Resource StatusResponse indicative of a set of the requested load measurements that areavailable (e.g., results are available, measurements can be performed,etc.) and that can be provided to the source access point 102. If noneof the measurements are available, the resource status response can beindicative of a failure message. Further, at 506, a Resource StatusUpdate is transmitted from the target access point 104 to the sourceaccess point 102 with the available load measurements (e.g., includingthe cell user occupancy indicator). As an example, the source accesspoint 102 can utilize the load measurements to facilitate load balancingand/or intelligent traffic steering.

FIG. 6 illustrates an example flow diagram 600 that depicts a transferof cell user occupancy data from a UMTS network to an LTE network. Inthis example scenario, source access point 102 is an eNB in an LTEcommunication network, while the target access point 104 (not shown) isan access point (e.g., base station, HNB, etc.) within a UMTS network.It can be noted that the source access point 102 can includefunctionality as more fully described herein, for example, as describedabove with regard to systems 100-400. As an example, the UMTS networkcan comprise a mobility management entity (MME) 602, a serving GPRSsupport node (SGSN) 604 and a radio network controller (RNC) 606. In oneaspect, at 608, the source access point 102 can transmit an eNB DirectInformation Transfer message to the MME 602 to request for loadmeasurements (e.g., including cell user occupancy data) from neighboringcell sites (e.g., including target access point 104). At 610, the MME602 can forward the request to the SGSN 604 via a RAN Information Relaymessage and at 612, the SGSN 604 can forward the request to the RNC 606via a Direct Information Transfer message. The RNC is coupled to thetarget access point 104 and can request and receive, from the targetaccess point 104, load measurement data, including, but not limited to,cell user occupancy data associated with the target access point 104. At614, the RNC 606 can encapsulate the load measurement data in a DirectInformation Transfer message that can be sent to the SGSN 604. At 616,the SGSN 604 can transfer the load measurement data to the MME 602 via aRAN Information Relay message and at 618, the MME 602 can forward theload measurement data to the source access point 102 via an MME DirectInformation Transfer message. As an example, the source access point 102can utilize the load measurements to facilitate load balancing and/orintelligent traffic steering.

FIG. 7 illustrates an example flow diagram 700 that depicts a transferof cell user occupancy data from an LTE network to a UMTS network. Inthis example scenario, target access point 104 is an access point (e.g.,eNB) in an LTE communication network, while the source access point 102(not shown) is an access point (e.g., base station, HNB, etc.) within aUMTS network. It can be noted that the target access point 104, MME 602,SGSN 604, and RNC 606 can include functionality as more fully describedherein, for example, as described above with regard to systems 100-600.In one aspect, the RNC 606 can be coupled to and can control the sourceaccess point 102 (not shown), which can request for load measurementsfrom neighboring cell sites (e.g., including target access point 104)via the RNC 606. At 702, the RNC 606 can transmit a Direct InformationTransfer message to the SGSN 604 to request for the load measurementdata (e.g., including cell user occupancy data). At 704, the SGSN 604can forward the request to the MME 602 via a RAN Information Relaymessage and at 706, the MME 602 can forward the request to the RNC 606via an MME Direct Information Transfer message. On receiving the MMEDirect Information Transfer message, the target access point 104 canperform requested load measurements based on the parameters specified inthe Direct Information Transfer message and/or determine (e.g., lookup)saved measurement data from data store 206.

At 708, the target access point 104 can transmit the load measurementdata (e.g., including cell user occupancy data) to the MME 602. At 710,the MME 602 can forward the load measurement data to the SGSN 604 via aRAN Information Relay message and at 712, the SGSN 604 can transfer theload measurement data to the RNC 606 via a Direct Information Transfermessage. The RNC 606 can then transfer the load measurement data to thetarget access point 104, which can utilize the cell user occupancy datato facilitate load balancing and/or intelligent traffic steering. It isnoted that the subject specification is not limited to communicationmessages (e.g., X2AP: Resource Status Request, X2AP: Resource StatusResponse, X2AP: Resource Status Update, eNB Direct Information Transfer,RAN Information Relay, Direct Information Transfer, and MME DirectInformation Transfer) depicted in FIGS. 5-7 and that most anycommunication messaging protocols can be utilized to transfer the celluser occupancy data between access points. Further, it can be noted thatalthough described herein as a cellular access point, the target accesspoint 104 can also be an access point associated with a wireless localarea network, WiFi access point, etc.

Referring now to FIG. 8, there illustrated is an example system 800 thatemploys one or more artificial intelligence (AI) components (802 ₁, 802₂), which facilitate automating one or more features in accordance withthe subject embodiments. It can be appreciated that the source accesspoint 102, the target access point 104, the occupancy determinationcomponent 208, the data transfer component 212, the data receptioncomponent 302, the traffic steering component 304 and the neighbormanagement component 306 can include respective functionality, as morefully described herein, for example, with regard to systems 100-700.

In an example embodiment, system 800 (e.g., in connection withautomatically determining data transfer parameters, traffic steeringcriteria, a bias for mobility parameters, neighbor relationships, etc.)can employ various AI-based schemes for carrying out various aspectsthereof. For example, a process for determining an optimal time/scheduleto transfer the cell user occupancy data, etc. can be facilitated via anautomatic classifier system implemented by AI component 802 ₁.Additionally or alternatively, a process for determining whether UEs areto be steered to the target access point 104 to efficiently reducenetwork congestion at the source access point 102 without negativelyimpacting user experience, determining which RAN network is to beselected, determining when a query for load measurement data is to betransmitted, etc. can be facilitated via an automatic classifier systemimplemented by AI component 802 ₂.

A classifier can be a function that maps an input attribute vector,x=(x1, x2, x3, x4, xn), to a confidence that the input belongs to aclass, that is, f(x)=confidence(class). Such classification can employ aprobabilistic and/or statistical-based analysis (e.g., factoring intothe analysis utilities and costs) to prognose or infer an action that auser desires to be automatically performed. In the case of communicationsystems, for example, attributes can be information received from UEsand/or access points, and the classes can be categories or areas ofinterest (e.g., levels of priorities). A support vector machine (SVM) isan example of a classifier that can be employed. The SVM operates byfinding a hypersurface in the space of possible inputs, which thehypersurface attempts to split the triggering criteria from thenon-triggering events. Intuitively, this makes the classificationcorrect for testing data that is near, but not identical to trainingdata. Other directed and undirected model classification approachesinclude, e.g., naïve Bayes, Bayesian networks, decision trees, neuralnetworks, fuzzy logic models, and probabilistic classification modelsproviding different patterns of independence can be employed.Classification as used herein can also be inclusive of statisticalregression that is utilized to develop models of priority.

As will be readily appreciated from the subject specification, anexample embodiment can employ classifiers that are explicitly trained(e.g., via a generic training data) as well as implicitly trained (e.g.,via observing access point/UE behavior, user/operator preferences,historical information, receiving extrinsic information, networkload/congestion trends, type of UE, type of target RAN, etc.). Forexample, SVMs can be configured via a learning or training phase withina classifier constructor and feature selection module. Thus, theclassifier(s) of AI component 802 ₁ can be used to automatically learnand perform a number of functions, including but not limited todetermining according to a predetermined criteria when and/or or towhich devices is the cell user occupancy data to be transmitted, aschedule according to which the cell user occupancy is to be monitored,the time interval utilized to calculate the cell user occupancy, etc.Further, the classifier(s) of AI component 802 ₂ can be used toautomatically learn and perform a number of functions, including but notlimited to determining according to a predetermined criteria a RAN towhich the UEs coupled to source access point 102 are to be handed over,a bias assigned to a mobility parameter, a triggering threshold, a timeat which a query for cell user occupancy data is to be transmitted(e.g., to target access point 104), etc. The criteria can include, butis not limited to, historical patterns and/or trends, user preferences,service provider preferences and/or policies, location of the accesspoint, current time, type of target RAN (e.g., macro cell, femtocell,WiFi network, etc.), network load, and the like.

FIGS. 9-11 illustrate flow diagrams and/or methods in accordance withthe disclosed subject matter. For simplicity of explanation, the flowdiagrams and/or methods are depicted and described as a series of acts.It is to be understood and appreciated that the various embodiments arenot limited by the acts illustrated and/or by the order of acts, forexample acts can occur in various orders and/or concurrently, and withother acts not presented and described herein. Furthermore, not allillustrated acts may be required to implement the flow diagrams and/ormethods in accordance with the disclosed subject matter. In addition,those skilled in the art will understand and appreciate that the methodscould alternatively be represented as a series of interrelated statesvia a state diagram or events. Additionally, it should be furtherappreciated that the methods disclosed hereinafter and throughout thisspecification are capable of being stored on an article of manufactureto facilitate transporting and transferring such methods to computers.The term article of manufacture, as used herein, is intended toencompass a computer program accessible from any computer-readabledevice or computer-readable storage/communications media.

Referring now to FIG. 9, illustrated is an example method 900 thattransmits cell user occupancy data, which is employed to facilitateefficient traffic steering, according to an aspect of the subjectdisclosure. As an example, method 900 can be implemented by one or morenetwork devices of RAN, for example, a target access point (e.g., basestation, eNB, HNB, etc.) In another example, method 900 can beimplemented by one or more devices of a core mobility network (e.g., anetwork load management system).

At 902, cell user occupancy associated with the target access point canbe determined. As an example, the cell user occupancy can represent amaximum number of devices that can be coupled to/served by the targetaccess point at a given instant. At 904, the cell user occupancy can benormalized, for example, to an indicator value from “1” to “10”. As anexample, the indicator value can comprise a composite value relative todifferent cell types/capacities. For example, an index number “2” can beassigned to a femtocell; an index “4” can be assigned to a picocell; anindex “10” can be assigned to a macro cell; and so on. It is noted thatthe cell user occupancy data is not limited to the above index values,and can comprise most any normalization and/or classification technique.For example, the cell user occupancy can be classified as “low,”“regular,” “high,” etc. based on predefined threshold values.

Further, at 906, the cell user occupancy data can be transmitted toneighboring access points (e.g., access points that are within apredefined distance from the target access point, access points thathave at least partially overlapping coverage areas, etc.) to facilitatetraffic steering associated with UEs that are served by the neighboringaccess points. For example, if the cell user occupancy of the targetaccess point is high (e.g., above a defined threshold), a probabilitythat the target access point will not be congested and/or will be ableto handle the traffic from the UE is high. Accordingly, one or more dataflows associated with the UEs can be communicated via the target accesspoint. In one aspect, the cell user occupancy data can be transmitted tothe neighboring access points periodically, on demand, in response todetermining a change in the occupancy data, during initialization, etc.

FIG. 10 illustrates an example method 1000 that facilitates networkselection to efficiently steer traffic associated with a UE from a firstRAN to a second RAN, according to an aspect of the subject disclosure.As an example, method 1000 can be implemented by a source access point(and/or UE coupled to the source access point) to determine whether aconnection to a new network is to be performed. At 1002, cell useroccupancy data can be received, for example, from a set of neighboringaccess points (e.g., target access point). As an example, the cell useroccupancy data represents a maximum number of UEs that the neighboringaccess points are capable of simultaneously (or substantiallysimultaneously) supporting. At 1004, a current network load index of theneighboring access point can also be received, for example, from theneighboring access point. As an example, the cell user occupancy dataand the current load index can be received in the same or differentmessages. At 1006, the received information can be analyzed and at 1008,one of the neighboring access points can be selected as a candidate fortraffic steering based on the analysis. For example, a first neighboringaccess point (e.g., a macro cell) that is at 80% load and has beenassigned a cell user occupancy indicator of “9” can be selected as thecandidate cell over a second neighboring access point (e.g., afemtocell) that is at 70% load that has cell user occupancy indicator as“1”.

In one aspect, mobility parameters can be biased based on the currentload index and the cell user occupancy of the neighboring access point.A weighting on the cell user occupancy can be dynamically and/orautomatically adjusted based on the current load index and triggeringthresholds. In the above example, mobility parameters associated withthe first neighboring access point can be assigned a positive bias whilemobility parameters associated with the second neighboring access pointcan be assigned a negative bias. It can be noted that various additionalparameters such as (but not limited to) device preferences, applicationpreferences, user defined policies, operator/service provider-definedpolicies, etc. can be employed to facilitate the traffic steering.

FIG. 11 illustrates an example method 1100 for determining whethertraffic associated with a UE is to be steered from a source access pointto a target access point, according to an aspect of the subjectdisclosure. As an example, method 1100 can be implemented by the sourceaccess point (and/or a UE coupled to the source access point device) todetermine whether a handover (and/or additional connection) to a newnetwork is to be performed. At 1102, cell user occupancy data associatedwith the target access point can be received. As an example, a currentload index for the target access point can also be received. Further, at1106, it can be determined whether the cell user occupancy data (andoptionally the current load index) satisfies a predefined occupancycriterion (e.g., is greater than an occupancy threshold). If determinedthat the cell user occupancy data satisfies the predefined occupancycriterion, then, at 1106, a handover can be facilitated to steer one ormore data flows associated with the UE from the source access point tothe target access point. It is noted that the UE is not limited toperforming a handover (e.g., disconnecting from the source access point)and can be simultaneously (or substantially simultaneously) coupled toboth the source access point and the target access point. In thisexample scenario, the UE can determine, based on operator policy and/orapplication preferences, which data (e.g., a first set of IP flows) isto be communicated via the source access point and which data (e.g., asecond set of IP flows) is to be communicated via the target accesspoint. Further, if determined, at 1104, that the cell user occupancydata does not satisfy the predefined occupancy criterion (e.g., is lessthan or equal to the occupancy threshold), then, at 1108, the UE cancontinue to be coupled to and communicate via the source access point.

To provide further context for various aspects of the subjectspecification, FIGS. 12 and 13 illustrate, respectively, a block diagramof an example embodiment 1200 of an access point that facilitatestraffic steering based on cell user occupancy data to facilitate trafficsteering and a wireless communication environment 1300, with associatedcomponents for operation of efficient network selection in accordancewith aspects described herein.

With respect to FIG. 12, in example embodiment 1200 comprises an accesspoint 1202. As an example, the source access point 102 and/or the targetaccess point 104 (and/or target access points 104 ₁-104 _(n)) disclosedherein with respect to system 100-800, can each include at least aportion of the access point 1202. In one aspect, the access point 1202can receive and transmit signal(s) (e.g., traffic and control signals)from and to wireless devices, access terminals, wireless ports androuters, etc., through a set of antennas 1269 ₁-1269 _(N). It should beappreciated that while antennas 1269 ₁-1269 _(N) are a part ofcommunication platform 1225, which comprises electronic components andassociated circuitry that provides for processing and manipulating ofreceived signal(s) (e.g., a packet flow) and signal(s) (e.g., abroadcast control channel) to be transmitted. In an aspect,communication platform 1225 can include a transmitter/receiver (e.g., atransceiver) 1266 that can convert signal(s) from analog format todigital format (e.g., analog-to-digital conversion) upon reception, andfrom digital format to analog (e.g., digital-to-analog conversion)format upon transmission. In addition, receiver/transmitter 1266 candivide a single data stream into multiple, parallel data streams, orperform the reciprocal operation. Coupled to transceiver 1266 is amultiplexer/demultiplexer 1267 that facilitates manipulation of signalin time and/or frequency space. Electronic component 1267 can multiplexinformation (data/traffic and control/signaling) according to variousmultiplexing schemes such as time division multiplexing (TDM), frequencydivision multiplexing (FDM), orthogonal frequency division multiplexing(OFDM), code division multiplexing (CDM), space division multiplexing(SDM), etc. In addition, mux/demux component 1267 can scramble andspread information (e.g., codes) according to substantially any codeknown in the art; e.g., Hadamard-Walsh codes, Baker codes, Kasami codes,polyphase codes, and so on. A modulator/demodulator 1268 is also a partof operational group 1225, and can modulate information according tomultiple modulation techniques, such as frequency modulation, amplitudemodulation (e.g., M-ary quadrature amplitude modulation (QAM), with M apositive integer), phase-shift keying (PSK), and the like.

Access point 1202 also includes a processor 1245 configured to conferfunctionality, at least partially, to substantially any electroniccomponent in the access point 1202, in accordance with aspects of thesubject disclosure. In particular, processor 1245 can facilitatesimplementing configuration instructions received through communicationplatform 1225, which can include storing data in memory 1255. Inaddition, processor 1245 facilitates processing data (e.g., symbols,bits, or chips, etc.) for multiplexing/demultiplexing, such as effectingdirect and inverse fast Fourier transforms, selection of modulationrates, selection of data packet formats, inter-packet times, etc.Moreover, processor 1245 can manipulate antennas 1269 ₁-1269 _(N) tofacilitate beamforming or selective radiation pattern formation, whichcan benefit specific locations covered by the access point 1202; andexploit substantially any other advantages associated with smart-antennatechnology. Memory 1255 can store data structures, code instructions,system or device information like device identification codes (e.g.,International Mobile Station Equipment Identity (IMEI), Mobile StationInternational Subscriber Directory Number (MSISDN), serial number . . .) and specification such as multimode capabilities; code sequences forscrambling; spreading and pilot transmission, floor plan configuration,access point deployment and frequency plans; and so on. Moreover, memory1255 can store configuration information such as schedules and policies;geographical indicator(s); network load data, cell user occupancy data(e.g., of access point 1202 and/or neighboring access points),historical logs, and so forth. In one example, data store 206 can beimplemented in memory 1255.

In embodiment 1200, processor 1245 can be coupled to the memory 1255 inorder to store and retrieve information necessary to operate and/orconfer functionality to communication platform 1225, network interface1235 (e.g., that coupled the access point to core network devices suchas but not limited to a network controller), and other operationalcomponents (e.g., multimode chipset(s), power supply sources . . . ; notshown) that support the access point 1202. The access point 1202 canfurther include a occupancy determination component 208, a data transfercomponent 212, an AI component 802 ₁, a data reception component 302, atraffic steering component 304, a neighbor management component 306,and/or an AI component 802 ₂ which can include functionality, as morefully described herein, for example, with regard to systems 100-400 and800. In addition, it is to be noted that the various aspects disclosedin the subject specification can also be implemented through (i) programmodules stored in a computer-readable storage medium or memory (e.g.,memory 1255) and executed by a processor (e.g., processor 1245), or (ii)other combination(s) of hardware and software, or hardware and firmware.

Referring now to FIG. 13, there illustrated is a wireless communicationenvironment 1300 that includes two wireless network platforms: (i) Afirst network platform 1310 (e.g., macro network platform) that serves,or facilitates communication with user equipment 1375 via a first RAN1370. As an example, in cellular wireless technologies (e.g., 3GPP UMTS,HSPA, 3GPP LTE, 3GPP UMB, 4G LTE, etc.), the first network platform 1310can be embodied in a Core Network; and (ii) A second network platform1380 (e.g., macro network platform, femto network platform, wirelesslocal area network (WLAN) platform, etc.), which can providecommunication with UE 1375 through a second RAN 1390 linked to thesecond network platform 1380. It should be appreciated that the secondnetwork platform 1380 can offload UE 1375 from the first networkplatform 1310, once UE 1375 attaches (e.g., based on the trafficsteering described herein) to the second RAN. In one example, the firstRAN and the second RAN can be commonly operated and/or deployed by acommon service provider.

It is noted that RAN (1370 and/or 1390) includes base station(s), oraccess point(s), and its associated electronic circuitry and deploymentsite(s), in addition to a wireless radio link operated in accordancewith the base station(s). Accordingly, the first RAN 1370 can comprisevarious access points like source access point 102, while the second RAN1390 can comprise multiple access points like target access point 104.

Both the first and the second network platforms 1310 and 1380 caninclude components, e.g., nodes, gateways, interfaces, servers, orplatforms, that facilitate packet-switched (PS) and/or circuit-switched(CS) traffic (e.g., voice and data) and control generation for networkedwireless communication. For example, the first network platform 1310includes CS gateway node(s) 1312 which can interface CS traffic receivedfrom legacy networks like telephony network(s) 1340 (e.g., publicswitched telephone network (PSTN), or public land mobile network (PLMN))or a SS7 network 1360. Moreover, CS gateway node(s) 1312 interfacesCS-based traffic and signaling and gateway node(s) 1318. In addition toreceiving and processing CS-switched traffic and signaling, gatewaynode(s) 1318 can authorize and authenticate PS-based data sessions withserved (e.g., through the first RAN 1370) wireless devices. Datasessions can include traffic exchange with networks external to thefirst network platform 1310, like wide area network(s) (WANs) 1350; itshould be appreciated that local area network(s) (LANs) can also beinterfaced with first network platform 1310 through gateway node(s)1318. Gateway node(s) 1318 generates packet data contexts when a datasession is established. It should be further appreciated that thepacketized communication can include multiple flows that can begenerated through server(s) 1314. The first network platform 1310 alsoincludes serving node(s) 1316 that conveys the various packetized flowsof information or data streams, received through gateway node(s) 1318.It is to be noted that server(s) 1314 can include one or more processorsconfigured to confer at least in part the functionality of first networkplatform 1310. To that end, one or more processors can execute codeinstructions stored in memory 1330 or other computer-readable medium,for example.

In example wireless environment 1300, memory 1330 can store informationrelated to operation of first network platform 1310. Information caninclude business data associated with subscribers; market plans andstrategies, e.g., promotional campaigns, business partnerships;operational data for mobile devices served through first networkplatform; service and privacy policies; end-user service logs for lawenforcement; and so forth. Memory 1330 can also store information fromat least one of telephony network(s) 1340, WAN(s) 1350, or SS7 network1360. Many different types of information can be stored in memory 1330without departing from example embodiments.

Gateway node(s) 1384 can have substantially the same functionality as PSgateway node(s) 1318. Additionally or optionally, the gateway node(s)1384 can also include substantially all functionality of serving node(s)1316. In an aspect, the gateway node(s) 1384 can facilitate handoverresolution, e.g., assessment and execution. Server(s) 1382 havesubstantially the same functionality as described in connection withserver(s) 1314 and can include one or more processors configured toconfer at least in part the functionality of the first network platform1310. In one example, the network load management system 402 can beimplemented or executed by server(s) 1382 and/or server(s) 1314. To thatend, the one or more processor can execute code instructions stored inmemory 1386, for example.

Memory 1386 can include information relevant to operation of the variouscomponents of the second network platform 1380. For example operationalinformation that can be stored in memory 1386 can comprise, but is notlimited to, subscriber information; contracted services; maintenance andservice records; cell configuration (e.g., devices served through secondRAN 1390; access control lists, or white lists); service policies andspecifications; privacy policies; add-on features; and so forth.

Referring now to FIG. 14, there is illustrated a block diagram of acomputer 1402 operable to execute the disclosed communicationarchitecture. In order to provide additional context for various aspectsof the disclosed subject matter, FIG. 14 and the following discussionare intended to provide a brief, general description of a suitablecomputing environment 1400 in which the various aspects of thespecification can be implemented. While the specification has beendescribed above in the general context of computer-executableinstructions that can run on one or more computers, those skilled in theart will recognize that the specification also can be implemented incombination with other program modules and/or as a combination ofhardware and software.

Generally, program modules include routines, programs, components, datastructures, etc., that perform particular tasks or implement particularabstract data types. Moreover, those skilled in the art will appreciatethat the inventive methods can be practiced with other computer systemconfigurations, including single-processor or multiprocessor computersystems, minicomputers, mainframe computers, as well as personalcomputers, hand-held computing devices, microprocessor-based orprogrammable consumer electronics, and the like, each of which can beoperatively coupled to one or more associated devices.

The illustrated aspects of the specification can also be practiced indistributed computing environments where certain tasks are performed byremote processing devices that are linked through a communicationsnetwork. In a distributed computing environment, program modules can belocated in both local and remote memory storage devices.

Computing devices typically include a variety of media, which caninclude computer-readable storage media and/or communications media,which two terms are used herein differently from one another as follows.Computer-readable storage media can be any available storage media thatcan be accessed by the computer and includes both volatile andnonvolatile media, removable and non-removable media. By way of example,and not limitation, computer-readable storage media can be implementedin connection with any method or technology for storage of informationsuch as computer-readable instructions, program modules, structureddata, or unstructured data. Computer-readable storage media can include,but are not limited to, RAM, ROM, EEPROM, flash memory or other memorytechnology, CD-ROM, digital versatile disk (DVD) or other optical diskstorage, magnetic cassettes, magnetic tape, magnetic disk storage orother magnetic storage devices, or other tangible and/or non-transitorymedia which can be used to store desired information. Computer-readablestorage media can be accessed by one or more local or remote computingdevices, e.g., via access requests, queries or other data retrievalprotocols, for a variety of operations with respect to the informationstored by the medium.

Communications media typically embody computer-readable instructions,data structures, program modules or other structured or unstructureddata in a data signal such as a modulated data signal, e.g., a carrierwave or other transport mechanism, and includes any information deliveryor transport media. The term “modulated data signal” or signals refersto a signal that has one or more of its characteristics set or changedin such a manner as to encode information in one or more signals. By wayof example, and not limitation, communication media include wired media,such as a wired network or direct-wired connection, and wireless mediasuch as acoustic, RF, infrared and other wireless media.

With reference again to FIG. 14, the example environment 1400 forimplementing various aspects of the specification includes a computer1402, the computer 1402 including a processing unit 1404, a systemmemory 1406 and a system bus 1408. As an example, the component(s),server(s), equipment, system(s), and/or device(s) (e.g., source accesspoint 102, target access point 104, target access points 104 ₁-104 _(n),UE 108, network configuration server 202, occupancy determinationcomponent 208, data transfer component 212, data reception component302, traffic steering component 304, neighbor management component 306,network load management system 402, MME 602, SGSN 604, RNC 606, AIcomponents 802 ₁-802 ₂, access point 1202, first network platform 1310,second network platform 1380, etc.) disclosed herein with respect tosystem 100-800 and 1200-1300 can each include at least a portion of thecomputer 1402. The system bus 1408 couples system components including,but not limited to, the system memory 1406 to the processing unit 1404.The processing unit 1404 can be any of various commercially availableprocessors. Dual microprocessors and other multi-processor architecturescan also be employed as the processing unit 1404.

The system bus 1408 can be any of several types of bus structure thatcan further interconnect to a memory bus (with or without a memorycontroller), a peripheral bus, and a local bus using any of a variety ofcommercially available bus architectures. The system memory 1406includes read-only memory (ROM) 1410 and random access memory (RAM)1412. A basic input/output system (BIOS) is stored in a non-volatilememory 1410 such as ROM, EPROM, EEPROM, which BIOS contains the basicroutines that help to transfer information between elements within thecomputer 1402, such as during startup. The RAM 1412 can also include ahigh-speed RAM such as static RAM for caching data.

The computer 1402 further includes an internal hard disk drive (HDD)1414, which internal hard disk drive 1414 can also be configured forexternal use in a suitable chassis (not shown), a magnetic floppy diskdrive (FDD) 1416, (e.g., to read from or write to a removable diskette1418) and an optical disk drive 1420, (e.g., reading a CD-ROM disk 1422or, to read from or write to other high capacity optical media such asthe DVD). The hard disk drive 1414, magnetic disk drive 1416 and opticaldisk drive 1420 can be connected to the system bus 1408 by a hard diskdrive interface 1424, a magnetic disk drive interface 1426 and anoptical drive interface 1428, respectively. The interface 1424 forexternal drive implementations includes at least one or both ofUniversal Serial Bus (USB) and IEEE 1394 interface technologies. Otherexternal drive connection technologies are within contemplation of thesubject disclosure.

The drives and their associated computer-readable storage media providenonvolatile storage of data, data structures, computer-executableinstructions, and so forth. For the computer 1402, the drives andstorage media accommodate the storage of any data in a suitable digitalformat. Although the description of computer-readable storage mediaabove refers to a HDD, a removable magnetic diskette, and a removableoptical media such as a CD or DVD, it should be appreciated by thoseskilled in the art that other types of storage media which are readableby a computer, such as zip drives, magnetic cassettes, flash memorycards, cartridges, and the like, can also be used in the exampleoperating environment, and further, that any such storage media cancontain computer-executable instructions for performing the methods ofthe specification.

A number of program modules can be stored in the drives and RAM 1412,including an operating system 1430, one or more application programs1432, other program modules 1434 and program data 1436. All or portionsof the operating system, applications, modules, and/or data can also becached in the RAM 1412. It is appreciated that the specification can beimplemented with various commercially available operating systems orcombinations of operating systems.

A user can enter commands and information into the computer 1402 throughone or more wired/wireless input devices, e.g., a keyboard 1438 and/or apointing device, such as a mouse 1440 or a touchscreen or touchpad (notillustrated, but which may be integrated into UE 108 in someembodiments). These and other input devices are often connected to theprocessing unit 1404 through an input device interface 1442 that iscoupled to the system bus 1408, but can be connected by otherinterfaces, such as a parallel port, an IEEE 1394 serial port, a gameport, a USB port, an IR interface, etc. A monitor 1444 or other type ofdisplay device is also connected to the system bus 1408 via aninterface, such as a video adapter 1446.

The computer 1402 can operate in a networked environment using logicalconnections via wired and/or wireless communications to one or moreremote computers, such as a remote computer(s) 1448. The remotecomputer(s) 1448 can be a workstation, a server computer, a router, apersonal computer, portable computer, microprocessor-based entertainmentappliance, a peer device or other common network node, and typicallyincludes many or all of the elements described relative to the computer1402, although, for purposes of brevity, only a memory/storage device1450 is illustrated. The logical connections depicted includewired/wireless connectivity to a local area network (LAN) 1452 and/orlarger networks, e.g., a wide area network (WAN) 1454. Such LAN and WANnetworking environments are commonplace in offices and companies, andfacilitate enterprise-wide computer networks, such as intranets, all ofwhich can connect to a global communications network, e.g., theInternet.

When used in a LAN networking environment, the computer 1402 isconnected to the local network 1452 through a wired and/or wirelesscommunication network interface or adapter 1456. The adapter 1456 canfacilitate wired or wireless communication to the LAN 1452, which canalso include a wireless access point disposed thereon for communicatingwith the wireless adapter 1456.

When used in a WAN networking environment, the computer 1402 can includea modem 1458, or is connected to a communications server on the WAN1454, or has other means for establishing communications over the WAN1454, such as by way of the Internet. The modem 1458, which can beinternal or external and a wired or wireless device, is connected to thesystem bus 1408 via the serial port interface 1442. In a networkedenvironment, program modules depicted relative to the computer 1402, orportions thereof, can be stored in the remote memory/storage device1450. It will be appreciated that the network connections shown areexample and other means of establishing a communications link betweenthe computers can be used.

The computer 1402 is operable to communicate with any wireless devicesor entities operatively disposed in wireless communication, e.g.,desktop and/or portable computer, server, communications satellite, etc.This includes at least WiFi and Bluetooth™ wireless technologies. Thus,the communication can be a predefined structure as with a conventionalnetwork or simply an ad hoc communication between at least two devices.

WiFi, or Wireless Fidelity, allows connection to the Internet from acouch at home, a bed in a hotel room, or a conference room at work,without wires. WiFi is a wireless technology similar to that used in acell phone that enables such devices, e.g., computers, to send andreceive data indoors and out; anywhere within the range of a basestation. WiFi networks use radio technologies called IEEE 802.11 (a, b,g, n, etc.) to provide secure, reliable, fast wireless connectivity. AWiFi network can be used to connect computers to each other, to theInternet, and to wired networks (which use IEEE 802.3 or Ethernet). WiFinetworks operate in the unlicensed 5 GHz radio band at a 54 Mbps(802.11a) data rate, and/or a 2.4 GHz radio band at an 11 Mbps(802.11b), a 54 Mbps (802.11g) data rate, or up to an 600 Mbps (802.11n)data rate for example, or with products that contain both bands (dualband), so the networks can provide real-world performance similar to thebasic 10BaseT wired Ethernet networks used in many offices.

As employed in the subject specification, the term “processor” can referto substantially any computing processing unit or device comprising, butnot limited to comprising, single-core processors; single-processorswith software multithread execution capability; multi-core processors;multi-core processors with software multithread execution capability;multi-core processors with hardware multithread technology; parallelplatforms; and parallel platforms with distributed shared memory.Additionally, a processor can refer to an integrated circuit, anapplication specific integrated circuit (ASIC), a digital signalprocessor (DSP), a field programmable gate array (FPGA), a programmablelogic controller (PLC), a complex programmable logic device (CPLD), adiscrete gate or transistor logic, discrete hardware components, or anycombination thereof designed to perform the functions described herein.Processors can exploit nano-scale architectures such as, but not limitedto, molecular and quantum-dot based transistors, switches and gates, inorder to optimize space usage or enhance performance of user equipment.A processor may also be implemented as a combination of computingprocessing units.

In the subject specification, terms such as “data store,” data storage,”“database,” “cache,” and substantially any other information storagecomponent relevant to operation and functionality of a component, referto “memory components,” or entities embodied in a “memory” or componentscomprising the memory. It will be appreciated that the memorycomponents, or computer-readable storage media, described herein can beeither volatile memory or nonvolatile memory, or can include bothvolatile and nonvolatile memory. By way of illustration, and notlimitation, nonvolatile memory can include read only memory (ROM),programmable ROM (PROM), electrically programmable ROM (EPROM),electrically erasable ROM (EEPROM), or flash memory. Volatile memory caninclude random access memory (RAM), which acts as external cache memory.By way of illustration and not limitation, RAM is available in manyforms such as synchronous RAM (SRAM), dynamic RAM (DRAM), synchronousDRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM(ESDRAM), Synchlink DRAM (SLDRAM), and direct Rambus RAM (DRRAM).Additionally, the disclosed memory components of systems or methodsherein are intended to comprise, without being limited to comprising,these and any other suitable types of memory.

What has been described above includes examples of the presentspecification. It is, of course, not possible to describe everyconceivable combination of components or methods for purposes ofdescribing the present specification, but one of ordinary skill in theart may recognize that many further combinations and permutations of thepresent specification are possible. Accordingly, the presentspecification is intended to embrace all such alterations, modificationsand variations that fall within the spirit and scope of the appendedclaims. Furthermore, to the extent that the term “includes” is used ineither the detailed description or the claims, such term is intended tobe inclusive in a manner similar to the term “comprising” as“comprising” is interpreted when employed as a transitional word in aclaim.

What is claimed is:
 1. A system, comprising: a processor; and a memorythat stores executable instructions that, when executed by theprocessor, facilitate performance of operations, comprising: in responseto determining a first type of a first access point device, determininga first ratio based on a first count of devices employing the firstaccess point device of the first type and a first number of devicessupported by the first type of the first access point device, whereinthe first number of devices supported by the first type of the firstaccess point device is determined, by the processor, based on the firsttype of the first access point device; wherein a second ratio is basedon a second count of devices employing a second access point device anda second number of devices supported by a second type of the secondaccess point device, wherein the first ratio is a same ratio as thesecond ratio, wherein the first number of devices is different than thesecond number of devices, and wherein the first count of devices isdifferent from the second count of devices; and based on comparing thefirst number of device and the second number of devices, enabling accessto the first access point device to facilitate load balancing viaredirecting a portion of a data stream, flowing between a user equipmentand the second access point device, to flow between the user equipmentand the first access point device.
 2. The system of claim 1, wherein thesecond type of the second access point device is a same type as thefirst type.
 3. The system of claim 1, wherein the second type of thesecond access point device is of a different than the first type.
 4. Thesystem of claim 3, wherein the first number of devices supported by thefirst type is a different number than the second number of devicessupported by the second type.
 5. The system of claim 4, wherein thefirst ratio is different than the second ratio.
 6. The system of claim1, wherein the operations further comprise ranking the first ratiorelative to the second ratio.
 7. The system of claim 6, wherein theredirecting the portion of the data stream is based on the ranking ofthe first ratio.
 8. The system of claim 1, wherein the first count isreceived via a radio access network information message.
 9. The systemof claim 1, wherein first information indicating the first type of thefirst access point device is received via a radio access networkinformation message.
 10. The system of claim 9, wherein the firstinformation indicating the first type of the first access point deviceis stored by the system.
 11. The system of claim 9, wherein the firstnumber of devices supported is designated by a manufacturer of the firstaccess point device.
 12. The system of claim 9, wherein the first numberof devices supported is designated by an entity associated withoperation of the first access point device.
 13. A method, comprising:determining, by a radio access network device comprising a processor, anidentification of a first type of a first access point device;determining, by the radio access network device, a first ratio based ona first count of devices employing the first access point device of thefirst type and a first number of devices supported by the first type ofthe first access point device, wherein the first number of devicessupported by the first type of the first access point device isdetermined based on the identification of the first type of the firstaccess point device; determining, by the radio access network device, asecond ratio based on a second count of devices employing the radioaccess network device that is of a second type and a second number ofdevices supported by the second type of the radio access network device,wherein the first ratio is a same ratio as the second ratio, wherein thefirst number of devices is different than the second number of devices,and wherein the first count of devices is different from the secondcount of devices; and based on comparing the first number of device andthe second number of devices, directing, by the radio access networkdevice, a first portion of a data stream flowing between a userequipment and the radio access network device, to flow, as a secondportion, between the user equipment and the first access point device.14. The method of claim 13, further comprising: based on a ranking ofthe first ratio and the second ratio, directing, by the radio accessnetwork device, the first portion of a data stream flowing between theuser equipment and the radio access network device, to flow, as a secondportion, between the user equipment and the first access point device.15. The method of claim 13, further comprising: determining, by theradio access network device, a third ratio based on a third count ofdevices employing a second access point device of a type different thanthe first type and a third number of devices supported by the type ofthe second access point device; and based on a ranking of the firstratio and the third ratio, directing, by the radio access networkdevice, the second portion of a data stream flowing between the userequipment and the first access point device, to flow, as a thirdportion, between the user equipment and the second access point device.16. The method of claim 13, wherein the first type and the second typeare different, and wherein the first number of devices supported and thesecond number of devices supported are correspondingly different. 17.The method of claim 13, wherein the determining the first ratio based onthe first count of devices employing the first access point device ofthe first type and the first number of devices supported by the firsttype of the first access point device, comprises determining, by theradio access network device, the first number of devices supported bythe first type of the first access point device based on a manufacturerof the first access point device.
 18. A user equipment, comprising: aprocessor; and a memory that stores executable instructions that, whenexecuted by the processor, facilitate performance of operations,comprising: receiving a first ratio based on a first count of devicesemploying a first access point device of a first type and a first numberof devices supported by the first type of the first access point device,wherein the first number of devices supported by the first type of thefirst access point device is determined at least in part from anindication of the first type of the first access point device;determining a second ratio based on a second count of devices employinga second access point device of a second type and a second number ofdevices supported by the second type of the second access point device,wherein the second number of devices supported by the second type of thesecond access point device is determined at least in part from anindication of the second type of the second access point device, andwherein the first ratio is a same ratio as the second ratio, wherein thefirst number of devices is different than the second number of devices,and wherein the first count of devices is different from the secondcount of devices; and based on comparing the first number of devices andthe second number of devices, redirecting a portion of a data streamflowing between the user equipment and the second access point device,to flow between the user equipment and the first access point device.19. The user equipment of claim 18, wherein the determining the firstnumber of devices is based on a manufacturer of the first access pointdevice.
 20. The user equipment of claim 18, wherein the first ratio isdifferent than the second ratio, wherein the first number of devicessupported by the first type of the first access point device isdifferent than the second number of devices supported by the second typeof the second access point device, and wherein the first type and thesecond type are different types of access point device.